$(document).ready(function() {
    //Autocompletar de cliente{{{
    //
   function atualizaCampoCliente(clienteSelecionado){
       //se o email do cliente é válido marca o campo com  uma cor azul
       if(clienteSelecionado){
           $('#auto').css({backgroundColor: '#E6E8FA'});
       //se o campo de cliente não é válido, marca o campo com uma cor avermelhada
       }else {
           $('#auto').css({backgroundColor: '#FFCCCC'});
           $('#campoForm_idCliente').val("");
       }
   }
   
   $('#auto').focusout(function() {
       var email = $('#auto').val();
       $.ajax({
            type: "GET",
            url: "./buscaDados.php",
            data: {term:email, pesquisaExata:true}
       }).done(function( result ) {
           if(result !== null && result !== "" && result[0]){
               atualizaCampoCliente(true);
           } else{
               atualizaCampoCliente(false);
           }
       });
       
   });
    $('#auto').autocomplete(
            {
                source: "./buscaDados.php",
                minLength: 2,
                //define select handler  
                select: function(e, ui) {        
                    //Seta o valor do campo hidden que será enviado quando o formulário for submetido
                    $('#campoForm_idCliente').val(ui.item.id);
                    atualizaCampoCliente(true);
            }  
                          
            });

     //}}}
     
     //Autocompletar de loja
     //{{{
   function atualizaCampoLoja(lojaSelecionada){
       //se o nome da loja é válido marca o campo com  uma cor azul
       if(lojaSelecionada){
           $('#autoLoja').css({backgroundColor: '#E6E8FA'});
       //se o campo nome da loja não é válido, marca o campo com uma cor avermelhada
       }else {
           $('#autoLoja').css({backgroundColor: '#FFCCCC'});
           $('#campoForm_idLoja').val("");
       }
   }
   
   $('#autoLoja').focusout(function() {
       var nomeLoja = $('#autoLoja').val();
       $.ajax({
            type: "GET",
            url: "./buscaDadosLoja.php",
            data: {term:nomeLoja, pesquisaExata:true}
       }).done(function( result ) {
           if(result !== null && result !== "" && result[0]){
               atualizaCampoLoja(true);
           } else{
               atualizaCampoLoja(false);
           }
       });
   });
   
    $('#autoLoja').autocomplete(
            {
                source: "./buscaDadosLoja.php",
                minLength: 2,
                //define select handler  
                select: function(e, ui) {        
                    //Seta o valor do campo hidden que será enviado quando o formulário for submetido
                    $('#campoForm_idLoja').val(ui.item.id);
                    atualizaCampoLoja(true);
            }  
    });
    
    //}}}
     
     //Autocompletar de Produto
     //{{{
     function atualizaCampoProduto(produtoSelecionado){
       //se o nome do produto é válido marca o campo com  uma cor azul
       if(produtoSelecionado){
           $('#autoProduto').css({backgroundColor: '#E6E8FA'});
       //se o campo nome do Produto não é válido, marca o campo com uma cor avermelhada
       }else {
           $('#autoProduto').css({backgroundColor: '#FFCCCC'});
           $('#campoForm_idProduto').val("");
       }
   }
   
   $('#autoProduto').focusout(function() {
       var nomeProduto = $('#autoProduto').val();
       $.ajax({
            type: "GET",
            url: "./buscaDadosProduto.php",
            data: {term:nomeProduto, pesquisaExata:true}
       }).done(function( result ) {
           if(result !== null && result !== "" && result[0]){
               atualizaCampoProduto(true);
           } else{
               atualizaCampoProduto(false);
           }
       });
   });
   
    $('#autoProduto').autocomplete(
            {
                source: "./buscaDadosProduto.php",
                minLength: 2,
                //define select handler  
                select: function(e, ui) {        
                    //Seta o valor do campo hidden que será enviado quando o formulário for submetido
                    $('#campoForm_idProduto').val(ui.item.id);
                    atualizaCampoProduto(true);
            }  
    });
    
    //tabela de itens do historico
    //{{{
   //função que adiciona um item na inteface na tabela de historico ao clicr no botão adicionar
   $('#adicionarItem').click(function() {
       //obtem valores do formulario
       var nomeProduto = $('#autoProduto').val();
       var idProduto = $('#campoForm_idProduto').val();
       var quantidade = $('#quantidade').val();
       //verifica se já não tem esta item na tabela
       if($('#'+idProduto).length != 0){
           alert("Este produto já foi cadastrado como um item deste historico!");
           return;
       }
       //verifica se os campos obrigatorios foram preenchidos
       if(nomeProduto == ""){
           alert("O nome do produto é obrigatório.");
           return;
       }
       if(quantidade == ""){
           alert("A quantidade é obrigatória.");
           return;
       }
       if(idProduto == ""){
           alert("Você não innformou um produto válido.");
           return;
       }
       //cria linha da tabela de itens
       var strLinhaTabela = "<tr id=" + idProduto +">";
       //adiciona coluna contendo o nome do produto
       strLinhaTabela += "<td class='nomeProduto'>" + nomeProduto + "</td>";
       //adiciona coluna contendo a quantidade
       strLinhaTabela += "<td class='quantidadeProduto'>" + quantidade + "</td>";
       //adiciona coluna contendo a exclusão
       strLinhaTabela += "<td name='"+idProduto+"'><button type='button' class='exlusaoProduto' name='"+idProduto+"'><img src='./imagens/excluir.png'/></button></td>";
       //fecha linha da tabela
       strLinhaTabela += "</tr> ";
       //cria cammpos hidden para seren enviados no formulario de inclusão de historico
       strLinhaTabela += "<input type='hidden' name='campoForm_idProduto_"+idProduto+"' value='"+ idProduto +"' />";
       strLinhaTabela += "<input type='hidden' name='campoForm_quantidade_"+idProduto+"' value='"+ quantidade +"' />";
       $('#tabelaHistorico tbody').append(strLinhaTabela);
       //limpa campos de inclusao na tabela
       $('#campoForm_idProduto').val("");
       $('#autoProduto').val("");
       $('#quantidade').val("");
       
       
   });
   
   $('#tabelaHistorico').on( 'click', 'button', function() {
       var idLinha = $(this).attr('name');
       //se não for um numero o id, então não é o botão da tabela
       if(!isNaN(idLinha)){
           $('#'+idLinha).remove();
       }
   });
   //}}}

   //Tela produtos recomendados
   //{{{
   $('#galeria img').mouseover(function(){
       var imgPosX = $(this).position().left;
       var imgPosY = $(this).position().top;
       imgPosX += 200;
       //('.hintImagem').attr(id);
       $('.hintImagem').css({"top": imgPosY+"px", "left": imgPosX+"px"}); 
       $('.hintImagem').show();
       
   });
   $('#galeria img').mouseout(function(){
       $('.hintImagem').hide();
       
   });
   
});
        